/**
 * 混成集計（一覧）画面 コントローラ
 */
APP.controller('KonseiShukeiCtrl', function($http, $window, $timeout) {
  
  // thisを保持（Ajax内のthisと混同を防ぐ為）
  var pthis = this;


  /**
   * 初期処理
   */
  pthis.Initialize = function () {

    // 表示用データをクリア
    pthis.datTaikai = [];
    pthis.datKonseiShukei = [];

 
    // Promiseを使用しJSONを並列取得し、表示処理を実施する
    Promise.all([new Promise(function (resolve, reject) {

      //=== 大会情報JSONの取得を行う
      $http({
        method  : AJAX_METHOD_GET,
        url     : '../Taikai.json' + '?a=' + START_TIMESTAMP,
      }).then(function successCallback(response) {
        // 大会情報データ
        pthis.datTaikai = response.data;
        resolve();
      }, function errorCallback(response) {
        reject();
      });

    }), new Promise(function (resolve, reject) {

      //=== 混成集計（一覧）画面 一覧JSONの取得を行う
      $http({
        method  : AJAX_METHOD_GET,
        url     : './KonseiShukei.json' + '?a=' + START_TIMESTAMP,
      }).then(function successCallback(response) {
        // 全混成集計（一覧）データ
        pthis.datKonseiShukei = response.data;
        resolve();
      }, function errorCallback(response) {
        reject();
      });
      
    })]).then(function () {
     
    }).catch(function () {
      // JSON取得エラー
    });

  };

  /**
   * 行クリックイベント
   */
  pthis.ClickRow = function (link) {
    // 詳細ページ遷移
    if (!!link) {
      window.location.href = link;
    }
  }
   
  // 初期処理を実行
  pthis.Initialize();

});
